﻿using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using Infrastucture;
using TimeSplicerModule.DomainModels;

namespace TimeSplicerModule.ViewModels
{
    public class TaskListViewModel : ViewModel
    {
        private Guid _selectedUserGuid;
        private Guid _selectedStatusGuid;
        private string _searchText;
        private List<UserModel> _users;
        private List<StatusModel> _statuses;
        private List<TaskModel> _tasks;
        private ObservableCollection<TaskModel> _filteredTasks;

        public Guid SelectedUserGuid
        {
            get { return _selectedUserGuid; }
            set { SetProperty(ref _selectedUserGuid, value); }
        }
        public Guid SelectedStatusGuid
        {
            get { return _selectedStatusGuid; }
            set { SetProperty(ref _selectedStatusGuid, value); }
        }
        public string SearchText
        {
            get { return _searchText; }
            set { SetProperty(ref _searchText, value); }
        }
        public List<UserModel> Users
        {
            get { return _users; }
            set { SetProperty(ref _users, value); }
        }
        public List<StatusModel> Statuses
        {
            get { return _statuses; }
            set { SetProperty(ref _statuses, value); }
        }
        public List<TaskModel> Tasks
        {
            get { return _tasks; }
            set { SetProperty(ref _tasks, value); }
        }
        public ObservableCollection<TaskModel> FilteredTasks
        {
            get { return _filteredTasks; }
            set { SetProperty(ref _filteredTasks, value); }
        }
    }
}
